"""
文件操作实例
需求：注册功能
    1.让用户录入用户名、2遍密码、手机号基本信息
    2.检测两次密码是否一致，一致则注册成功
    3.注册成功后需要将用户信息存储到文件中进行保存
"""
def regist():
    # 第一步输入信息
    print("-----欢迎注册图书馆-----")
    username = input("请输入用户名：")
    password = input("请输入密码：")
    repeatpwd = input("请再次输入密码：")
    phone = input("请输入手机号：")
    if password == repeatpwd:
        with open("userData.txt", "a+", encoding="utf-8") as fp:
            # 存储的形式为 xxx-xxx-xxx
            fp.write(username + "-" + password + "-" + phone + "\n")
            print(f"注册成功----你的用户名为：{username}")
    else:
        print("两次密码不一致，注册失败请重新注册！")
        regist()


"""
登录功能：
    1.输入用户名密码
    2.验证是否正确
"""
def login():
    print("----欢迎来到登录页面----")
    username = input("请输入用户名：")
    password = input("请输入密码：")
    # 获取文件中的每一行，判断用户名，密码是否一致
    with open("userData.txt", "r", encoding="utf-8") as fp:
        # 获取所有行的数据，以列表形式存放[xx,xx]
        data = fp.readlines()
        for one in data:
            # 去除字符串前后的空格和'/n'
            one = one.strip()
            data_arr = one.split("-")
            f_username = data_arr[0]
            f_password = data_arr[1]
            # flag 判断登录状态
            # python 只有在函数里定义的变量叫内部变量，
            # 在for循环等 里面定义的变量，在循环外面也能用
            flag = 0
            if f_username == username and f_password == password:
                flag = 1
                break
        if flag == 1:
            print("登录成功！")
        else:
            print("登录失败！")


login()  # 登录函数
regist()  # 调用函数完成注册功能
